ডিপ্লয়মেন্ট রোলব্যাক স্ট্র্যাটেজি হলো এমন একটি প্রক্রিয়া, যেখানে সফটওয়্যার ডিপ্লয়মেন্টের সময় কোনো সমস্যা দেখা দিলে দ্রুত আগের স্থিতিশীল অবস্থায় ফিরে যাওয়া যায়। অ্যাপাচি অ্যান্ট (Apache ANT) রোলব্যাকের জন্য সরাসরি কোনো ফিচার সরবরাহ না করলেও, কাস্টম স্ক্রিপ্ট এবং ডিপ্লয়মেন্ট পরিকল্পনার মাধ্যমে এটি কার্যকর করা সম্ভব।
ডিপ্লয়মেন্ট শুরু করার আগে চলমান অ্যাপ্লিকেশনের একটি ব্যাকআপ তৈরি করা উচিত। এটি রোলব্যাকের সময় পুনরুদ্ধার করতে সহায়ক হয়।
ANT স্ক্রিপ্টে একটি রোলব্যাক টাস্ক যুক্ত করা, যা ব্যাকআপ থেকে আগের সংস্করণ পুনরুদ্ধার করবে।
ডিপ্লয়মেন্ট এবং রোলব্যাক উভয়ের জন্য যথাযথ লগ তৈরি করা এবং ডেভেলপমেন্ট টিমকে নোটিফিকেশন পাঠানো উচিত।
project/
├── build.xml
├── app/
│ ├── current/ (চলমান অ্যাপ্লিকেশন)
│ ├── backup/ (ব্যাকআপ রাখা হবে)
│ ├── new-release/ (নতুন ডিপ্লয়মেন্ট ফাইল)
<project name="DeploymentRollbackExample" default="deploy" basedir=".">
<!-- Properties -->
<property name="current.dir" value="app/current"/>
<property name="backup.dir" value="app/backup"/>
<property name="release.dir" value="app/new-release"/>
<!-- ব্যাকআপ তৈরি -->
<target name="backup">
<mkdir dir="${backup.dir}"/>
<copy todir="${backup.dir}">
<fileset dir="${current.dir}"/>
</copy>
<echo message="Backup completed successfully."/>
</target>
<!-- নতুন ডিপ্লয়মেন্ট -->
<target name="deploy" depends="backup">
<delete dir="${current.dir}"/>
<mkdir dir="${current.dir}"/>
<copy todir="${current.dir}">
<fileset dir="${release.dir}"/>
</copy>
<echo message="Deployment completed successfully."/>
</target>
<!-- রোলব্যাক -->
<target name="rollback">
<delete dir="${current.dir}"/>
<mkdir dir="${current.dir}"/>
<copy todir="${current.dir}">
<fileset dir="${backup.dir}"/>
</copy>
<echo message="Rollback completed successfully."/>
</target>
</project>
ডিপ্লয়মেন্টের আগে চলমান ফাইল ব্যাকআপ করা হবে:
ant backup
ant deploy
যদি নতুন ডিপ্লয়মেন্টে কোনো সমস্যা দেখা দেয়, তাহলে রোলব্যাক করা হবে:
ant rollback
প্রতিটি ডিপ্লয়মেন্টের আগে ব্যাকআপ তৈরি নিশ্চিত করতে ডিপ্লয়মেন্ট প্রক্রিয়ার অংশ হিসেবে ব্যাকআপ টাস্ক যুক্ত করুন।
ডিপ্লয়মেন্টের পরে সার্ভারের স্টেট চেক করুন। সমস্যার সংকেত পাওয়া মাত্র রোলব্যাক করুন।
ডিপ্লয়মেন্ট এবং রোলব্যাকের প্রতিটি ধাপ লগ করুন। লগ থেকে ডিপ্লয়মেন্ট সমস্যার মূল কারণ খুঁজে বের করতে সুবিধা হয়।
রোলব্যাক স্ক্রিপ্ট নিয়মিত পরীক্ষা করুন এবং নিশ্চিত করুন যে এটি নির্ভুলভাবে কাজ করছে।
অ্যাপাচি অ্যান্ট দিয়ে ডিপ্লয়মেন্ট রোলব্যাক স্ট্র্যাটেজি কার্যকর করার জন্য ব্যাকআপ, রোলব্যাক স্ক্রিপ্ট এবং লগিং সিস্টেমের সঠিক সমন্বয় করতে হবে। যদিও এটি সরাসরি আধুনিক বিল্ড টুলগুলোর মতো অগ্রসর নয়, কাস্টমাইজড স্ক্রিপ্টের মাধ্যমে রোলব্যাক প্রক্রিয়াটি দক্ষতার সাথে পরিচালনা করা সম্ভব।